//package com.mida.dms.knw.controller;
//
//import com.mida.dms.knw.Result.BaseResult;
//import com.mida.dms.knw.entity.DtElement;
//import com.mida.dms.knw.entity.vo.KnwNoumenonVo;
//import com.mida.tool.common.result.ListResult;
//import io.swagger.annotations.Api;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.http.HttpStatus;
//import org.springframework.web.bind.annotation.*;
//
///**
// * 首页业务处理
// * @author dj
// *
// */
//@RestController
//@RequestMapping("/homePage")
//@Api(tags = "首页业务处理")
//@Slf4j
//@CrossOrigin
//public class HomePageController extends BaseResult {
//
//    @Autowired
//    private DataElementService dataElementService;
//
//    @Autowired
//    private DataSetService dataSetService;
//
//    @Autowired
//    private DetailCodingSystemService detailCodingSystemService;
//
//    @Autowired
//    private KnwConceptualService knwConceptualService;
//
//    @Autowired
//    private KnwNoumenonService knwNoumenonService;
//
//    @Autowired
//    private KnwIndividualService knwIndividualService;
//
//    @Autowired
//    private DtModelService dtModelService;
//
//    /**
//     * 数据元分页页面展示处理　
//     * @param homePageVo
//     * @return
//     */
//    @PostMapping(value = "/getDataElementPage", produces = {"application/json;charset=UTF-8"})
//    @ResponseBody
//    public ListResult<PageResultVo<DtElement>> getDataElementPage(@RequestBody(required = false) HomePageVo homePageVo) {
//        ListResult result = new ListResult();
//
//        try {
//            DataElementVo dataElementVo = new DataElementVo();
//            dataElementVo.setSearch(homePageVo.getSearchParm());
//            dataElementVo.setCurrentPage(homePageVo.getCurrentPage());
//            dataElementVo.setPageSize(homePageVo.getPageSize());
//            PageResultVo<DtElement>  data = dataElementService.getDataElement(
//                    dataElementVo.getSearch(), dataElementVo.getCurrentPage(),
//                    dataElementVo.getPageSize(), dataElementVo.getDataSort());
//            buildListSuccess(result, data);
//        } catch (Exception e) {
//            log.error(e.getMessage(), e);
//            buildListWarn(result, "查询数据元失败");
//        }
//        return result;
//    }
//
//    /**
//     * 值分页页面展示处理　
//     * @param homePageVo
//     * @return
//     */
//    @PostMapping(value = "/getDataSetPage", produces = {"application/json;charset=UTF-8"})
//    @ResponseBody
//    public ListResult<PageResultVo<DataSetVo>> getDataSetPage(@RequestBody(required = false) HomePageVo homePageVo) {
//        DataSetPageVo vo = new DataSetPageVo();
//        vo.setSearChData(homePageVo.getSearchParm());
//        vo.setPageSize(homePageVo.getPageSize());
//        vo.setCurrentPage(homePageVo.getCurrentPage());
//        return dataSetService.findPage(vo);
//    }
//
//    /**
//     * 编码体系分页页面展示处理
//     * @param homePageVo
//     * @return
//     */
//    @PostMapping(value = "/getDetailCodingSystemCitationPage", produces = {"application/json;charset=UTF-8"})
//    @ResponseBody
//    public ListResult<PageResultVo<DetailCodingSystemCitationVo>> getDetailCodingSystemCitationPage(
//            @RequestBody(required = false) HomePageVo homePageVo) {
//
//        DetailCodingSystemPageVo vo = new DetailCodingSystemPageVo();
//        vo.setSearChData(homePageVo.getSearchParm());
//        vo.setPageSize(homePageVo.getPageSize());
//        vo.setCurrentPage(homePageVo.getCurrentPage());
//        return detailCodingSystemService.findPage(vo);
//    }
//
//    /**
//     * 概念分页页面展示处理　
//     * @param homePageVo
//     * @return
//     */
//    @PostMapping(value = "/getKnwConceptualPage",produces = {"application/json;charset=UTF-8" })
//    @ResponseBody
//    public ListResult<PageResultVo<KnwConceptualVo>> getKnwConceptualPage(
//            @RequestBody(required = false) HomePageVo homePageVo) {
//        KnwConceptualPageVo vo = new KnwConceptualPageVo();
//        vo.setSearChData(homePageVo.getSearchParm());
//        vo.setPageSize(homePageVo.getPageSize());
//        vo.setCurrentPage(homePageVo.getCurrentPage());
//        return knwConceptualService.findPage(vo);
//    }
//
//    /**
//     * 本体分页页面展示处理　
//     */
//    @PostMapping(value = "/getKnwNoumenonPage",produces = { "application/json;charset=UTF-8" })
//    @ResponseBody
//    public ListResult<PageResultVo<KnwNoumenonVo>> getKnwNoumenonPage(
//            @RequestBody(required = false) HomePageVo homePageVo) {
//        KnwNoumenonPageVo vo = new KnwNoumenonPageVo();
//        vo.setSearchData(homePageVo.getSearchParm());
//        vo.setPageSize(homePageVo.getPageSize());
//        vo.setCurrentPage(homePageVo.getCurrentPage());
//        ListResult<PageResultVo<KnwNoumenonVo>> list = knwNoumenonService.findPage(vo);
//        if (list.getData().getList() == null) {
//            list.getData().setList(null);
//        }
//        if (list.getData().getPage().getTotalCount() == null) {
//            list.getData().setPage(null);
//        }
//        return list;
//    }
//
//    /**
//     * 实例分页页面展示处理
//     */
//    @PostMapping(value = "/getKnwIndividualPage",produces = { "application/json;charset=UTF-8" })
//    @ResponseBody
//    public ListResult<PageResultVo<KnwIndividualVo>> getKnwIndividualPage(
//            @RequestBody(required = false) HomePageVo homePageVo) {
//        KnwIndividualPageVo vo = new KnwIndividualPageVo();
//        vo.setSearChData(homePageVo.getSearchParm());
//        vo.setPageSize(homePageVo.getPageSize());
//        vo.setCurrentPage(homePageVo.getCurrentPage());
//        ListResult<PageResultVo<KnwIndividualVo>> list = knwIndividualService.getKnwIndividualPage(vo);
//        if (list.getData().getList() == null) {
//            list.getData().setList(null);
//        }
//        if (list.getData().getPage().getTotalCount() == null) {
//            list.getData().setPage(null);
//        }
//        //分页查询实例
//        return list;
//    }
//
//    /**
//     * 模型分页页面展示处理　
//     * @param homePageVo
//     * @return
//     */
//    @PostMapping(value = "/getDtModelPage", produces = {"application/json;charset=UTF-8"})
//    @ResponseBody
//    public ListResult<PageResultVo<DtModelPageVo>> getDtModelPage(@RequestBody(required = false) HomePageVo homePageVo) {
//
//        ListResult<PageResultVo<DtModelPageVo>> result = new ListResult();
//        try {
//            PageResultVo<DtModelPageVo> data = dtModelService.getDtModels(homePageVo.getSearchParm(),
//                    homePageVo.getCurrentPage(), homePageVo.getPageSize());
//            buildListSuccess(result, data);
//        } catch (Exception e) {
//            log.error(e.getMessage(), e);
//            result.setStatus(HttpStatus.INTERNAL_SERVER_ERROR.value());
//            result.setMessage("模型分页页面展示处理失败");
//            return result;
//        }
//
//        if (result.getData().getList() == null || result.getData().getList().size() == 0) {
//           result.getData().setList(null);
//        }
//        if (result.getData().getPage().getTotalCount() == null) {
//            result.getData().setPage(null);
//        }
//        return result;
//    }
//}
